###User Defined Function###
_WinAPI_DuplicateTokenEx

###Description###
Erstellt einen neuen Primär- oder Immitierungszugangstoken welcher einen bereits existieren Token dubliziert.

###Syntax###
#include <WinAPIProc.au3>
_WinAPI_DuplicateTokenEx ( $hToken, $iAccess, $iLevel [, $iType = 1 [, $tSecurity = 0]] )

###Parameters###
@@ParamTable@@
$hToken
	Das Handle zu einem Zugangstoken welcher mit dem $TOKEN_DUPLICATE Zugang geöffnet wurde.
$iAccess
	Die angeforderten Zugriffsrecht für einen neuen Token. Um die selben Zugangsrechte wie für den bereits bestehenden Token anzuforden muss $iAccess 0 sein.
	Um alle Zugangsrechte, welche für den Aufrufer gültig sind, zu fordern, sollte man $TOKEN_ALL_ACCESS verwenden.
$iLevel
	Die Sicherheitsimmitationslevels.
		$SECURITYANONYMOUS
		$SECURITYIDENTIFICATION
		$SECURITYIMPERSONATION
		$SECURITYDELEGATION
$iType
	[optional] Der Tokentyp.
		$TOKENPRIMARY
		$TOKENIMPERSONATION
$tSecurity
	[optional] Die $tagSECURITY_ATTRIBUTES Struktur gibt einen Sicherheitsdeskriptor für einen neuen Token an und gibt ab ob Kindprozesse diesen Token erben können.
	Wenn dieser Parameter 0 ist (Standard), dann bekommt der Token einen Standardsicherheitsdeskriptor und das Handle kann nicht vererbt werden.
	Wenn der Sicherheitsdeskriptor eine Systemzugangskontrollliste (system access control list) beinhaltet, so bekommt der Token den $ACCESS_SYSTEM_SECURITY Zugang auch wenn dieser nicht angefordert wurde.
@@End@@

###ReturnValue###
@@ReturnTable@@
Success:	Das Handle zu dem neuen Token.
Failure:	0, rufe <a href="_WinAPI_GetLastError.htm">_WinAPI_GetLastError()</a> auf um erweiterte Fehlerinformationen zu bekommen.
@@End@@

###Remarks###
Wenn man mit dem neuen Token fertig ist, so sollte man die <a href="_WinAPI_CloseHandle.htm">_WinAPI_CloseHandle()</a> Funktion aufrufen um das Handle des Tokens zu schließen.

###Related###
_WinAPI_CloseHandle

###See Also###
@@MsdnLink@@ DuplicateTokenEx
